// 接受请求并验证
const { varifyToken } = require('./token.js');
const urlList = require('../libs/url')

// 放最开始的app.use()，接收所有请求
module.exports = (req, res, next) => {
  let url = req._parsedUrl.pathname; // 当前访问的url,不包括参数
  console.log(url,'校验url')
  // let whiteUrl = ['/api/user/login']; // 白名单
  let whiteUrl = urlList; 
  if (whiteUrl.indexOf(url) >= 0) {
    return next(); // 找到是白名单的，直接放行，不需要验证
  }
  console.log('开始验证...');
  // 验证
  console.log(req.headers.authorization,'请求token...')
  let token = req.headers.authorization; 
  let result = varifyToken(token); // 调用上一个文件里面的验证方法
  if (result.code == 606) { 
    res.send(result); // 验证失败，返回验证信息
  } else {
    req.resToken = result; // 存成功的信息，用到时可以用
    return next(); // 成功就放行，可以访问接口
  }
};

